.loading{
    width:200px;
    height:200px;
    position:relative;
  }
  .loading::before,.loading::after{
    content:'';
    top:0;
    right:0;
    left:0;
    bottom:0;
    margin:auto;
    position:absolute;
    background:gray;
    width:0px;
    height:0px;
    border-radius:50%;
    animation:s 1s linear infinite;
  }
  .loading::after{
    animation-delay:0.5s
  }
  @keyframes s{
    0%{
      width:0px;height:0px;opacity:1;
    }
    100%{
      width:80px;height:80px;opacity:0;
    }
  }
  .site-welcome {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: white;
    z-index: 2;
    justify-content: center;
    align-items: center;
}

.site-welcome.active {
    display: flex;
}